Setup
highlight.snp.df <- read.table(paste0('../../', '../motif_analysis/output/first_try/report//summary_table.txt'), header = T, sep = '\t')
rdss <- strsplit('output/heart_motif_snp-SIPA1L3/Adrenal_Gland/fine-map__susie/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Adrenal_Gland/fine-map__susie_pv_0.01/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Adrenal_Gland/fine-map__susie_pv_0.001/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Adrenal_Gland/fine-map__susie_pv_1/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Artery_Aorta/fine-map__susie/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Artery_Aorta/fine-map__susie_pv_0.01/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Artery_Aorta/fine-map__susie_pv_0.001/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Artery_Aorta/fine-map__susie_pv_1/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Heart_Left_Ventricle/fine-map__susie/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Heart_Left_Ventricle/fine-map__susie_pv_0.01/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Heart_Left_Ventricle/fine-map__susie_pv_0.001/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Heart_Left_Ventricle/fine-map__susie_pv_1/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Heart_Atrial_Appendage/fine-map__susie/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Heart_Atrial_Appendage/fine-map__susie_pv_0.01/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Heart_Atrial_Appendage/fine-map__susie_pv_0.001/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Heart_Atrial_Appendage/fine-map__susie_pv_1/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Muscle_Skeletal/fine-map__susie/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Muscle_Skeletal/fine-map__susie_pv_0.01/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Muscle_Skeletal/fine-map__susie_pv_0.001/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Muscle_Skeletal/fine-map__susie_pv_1/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Esophagus_Mucosa/fine-map__susie/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Esophagus_Mucosa/fine-map__susie_pv_0.01/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Esophagus_Mucosa/fine-map__susie_pv_0.001/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Esophagus_Mucosa/fine-map__susie_pv_1/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Artery_Coronary/fine-map__susie/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Artery_Coronary/fine-map__susie_pv_0.01/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Artery_Coronary/fine-map__susie_pv_0.001/ENSG00000105738.6.rds,output/heart_motif_snp-SIPA1L3/Artery_Coronary/fine-map__susie_pv_1/ENSG00000105738.6.rds', ',')[[1]]
gene <- 'ENSG00000105738.6'
motif_prefix <- paste0('../../', '../motif_analysis/output/first_try/report//motif_logo/')
cols <- c('gene_name', 'motif_snp', 'r', 'motif_id', 'motif_name', 'motif_qval', 'motif_snp.pos', 'motif.length', 'strand', 'tissue', 'pip')
tissue <- basename(dirname(dirname(rdss[1])))
highlight.snp <- highlight.snp.df[highlight.snp.df$ensembl_gene_id == str_match(gene, '([A-Za-z0-9]+).[A-Za-z0-9]+')[, 2] & highlight.snp.df$tissue == tissue, ]
idx <- highlight.snp$idx[1]
mash <- paste0('../../', '../motif_analysis/output/first_try/report//mash_plot/', '/', 'mash__idx', idx, '.png')
cat('
', paste0(''), '
', '
')
highlight.snp.df$strand <- as.character(highlight.snp.df$strand)
highlight.snp.df$strand[highlight.snp.df$strand == '-'] <- 'negative'
highlight.snp.df$strand[highlight.snp.df$strand == '+'] <- 'positive'
Results
df.purity <- data.frame()
hitted <- data.frame()
mytheme <- gridExtra::ttheme_default(
core = list(fg_params=list(cex = .7)),
colhead = list(fg_params=list(cex = .7)),
rowhead = list(fg_params=list(cex = .7)))
for(rds in rdss) {
tissue <- basename(dirname(dirname(rds)))
method <- basename(dirname(rds))
out <- readRDS(paste0('../../', rds))
cs0 <- susieR::susie_get_CS(out$fitted, t(data.matrix(out$X[, -ncol(out$X)])), min_abs_corr = 0)
if(nrow(cs0$purity) > 0) {
cs0$purity <- round(cs0$purity, digits = 2)
cs0$purity$tissue <- tissue
}
a <- cs0$purity
if(nrow(a) == 0) {
a <- data.frame(NA)
}
tb0 <- tableGrob(a, widths=unit(rep(1/ncol(a), ncol(a)),"npc")-unit(1,"line"), theme = mytheme)
cs <- susieR::susie_get_CS(out$fitted, t(data.matrix(out$X[, -ncol(out$X)])), coverage = 0.9)
if(nrow(cs$purity) > 0) {
cs$purity$tissue <- tissue
df.purity <- rbind(df.purity, cs$purity)
}
pip <- susieR::susie_get_PIP(out$fitted, cs$cs_index)
coordinate <- as.numeric(str_match(out$X$SNP_ID, '[0-9]+_([0-9]+)_[A-Za-z]+_[A-Za-z]+_[A-Za-z0-9]+')[, 2])
df <- data.frame(coordinate = coordinate, pip = pip)
df$cs <- -1
if(length(cs$cs_index) != 0) {
for(i in 1 : length(cs$cs_index)) {
df$cs[cs$cs[[i]]] <- cs$cs_index[i]
}
}
highlight.snp <- highlight.snp.df[highlight.snp.df$ensembl_gene_id == str_match(gene, '([A-Za-z0-9]+).[A-Za-z0-9]+')[, 2] & highlight.snp.df$tissue == tissue, ]
leading.snp <- as.numeric(str_match(highlight.snp$leading_eqtl[1], '[0-9]+_([0-9]+)_[A-Za-z]+_[A-Za-z]+_[A-Za-z0-9]+')[, 2])
candidate.snp <- as.numeric(str_match(highlight.snp$motif_snp, '[0-9]+_([0-9]+)_[A-Za-z]+_[A-Za-z]+_[A-Za-z0-9]+')[, 2])
df$type <- 'No'
df$type[df$coordinate %in% candidate.snp] <- 'Motif SNP'
df$type[df$coordinate %in% leading.snp] <- 'Leading SNP'
df$cs <- factor(df$cs)
p <- ggplot(df)
p <- p + ggtitle(paste0(tissue, '
PIP (red line: leadingSNP; blue line: candidateSNP)'))
p <- p + geom_vline(xintercept = candidate.snp, color = 'blue')
p <- p + geom_vline(xintercept = leading.snp, color = 'red', linetype = 2) + theme(legend.position = "bottom")
p <- p + geom_point(aes(x = coordinate, y = pip, color = cs, shape = type), size = 3)
highlight.snp$pip <- pip[match(as.numeric(str_match(highlight.snp$motif_snp, '[0-9]+_([0-9]+)_[A-Za-z]+_[A-Za-z]+_[A-Za-z0-9]+')[, 2]), coordinate)]
hitted.sub <- highlight.snp[candidate.snp %in% coordinate[unlist(cs$cs)], ]
hitted <- rbind(hitted, hitted.sub)
e <- plot_grid(plotlist = list(p, tb0), ncol = 1, rel_heights = c(3/4, 1/4))
cat('##', tissue, method, '
', '
')
subchunkify(e, fig_asp = .8)
cat('
', '
')
if(nrow(hitted.sub) != 0) {
hitted.sub$motif_logo <- paste0('')
hitted.sub <- hitted.sub[, c(cols, 'motif_logo')]
print(hitted.sub %>% kable(format = "html", col.names = colnames(hitted.sub)) %>%
kable_styling() %>%
kableExtra::scroll_box(width = "100%", height = "500px"))
}
}
Adrenal_Gland fine-map__susie_pv_0.01

Adrenal_Gland fine-map__susie_pv_0.001

Artery_Aorta fine-map__susie

Artery_Aorta fine-map__susie_pv_0.01

Artery_Aorta fine-map__susie_pv_0.001

Artery_Aorta fine-map__susie_pv_1

Heart_Left_Ventricle fine-map__susie_pv_0.001

Heart_Atrial_Appendage fine-map__susie_pv_0.001

Muscle_Skeletal fine-map__susie_pv_0.001

Esophagus_Mucosa fine-map__susie

Esophagus_Mucosa fine-map__susie_pv_0.01

Esophagus_Mucosa fine-map__susie_pv_0.001

Esophagus_Mucosa fine-map__susie_pv_1

Artery_Coronary fine-map__susie

Artery_Coronary fine-map__susie_pv_0.01

Artery_Coronary fine-map__susie_pv_0.001

Artery_Coronary fine-map__susie_pv_1

Summary of SNPs in CS
if(nrow(hitted) != 0) {
hitted$motif_logo <- paste0('')
hitted <- hitted[, c(cols, 'motif_logo')]
hitted %>% kable(format = "html", col.names = colnames(hitted)) %>%
kable_styling() %>%
kableExtra::scroll_box(width = "100%", height = "500px")
}
|
|
gene_name
|
motif_snp
|
r
|
motif_id
|
motif_name
|
motif_qval
|
motif_snp.pos
|
motif.length
|
strand
|
tissue
|
pip
|
motif_logo
|
|
749
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999688
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Adrenal_Gland
|
0.2191132
|
|
|
750
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999688
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Adrenal_Gland
|
0.2191132
|
|
|
7491
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999688
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Adrenal_Gland
|
0.2443349
|
|
|
7501
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999688
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Adrenal_Gland
|
0.2443349
|
|
|
280
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999638
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Heart_Left_Ventricle
|
0.3687054
|
|
|
281
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999638
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Heart_Left_Ventricle
|
0.3687054
|
|
|
2801
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999638
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Heart_Left_Ventricle
|
0.3371147
|
|
|
2811
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999638
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Heart_Left_Ventricle
|
0.3371147
|
|
|
2802
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999638
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Heart_Left_Ventricle
|
0.3711605
|
|
|
2812
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999638
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Heart_Left_Ventricle
|
0.3711605
|
|
|
126
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999398
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Heart_Atrial_Appendage
|
0.3452307
|
|
|
127
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999398
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Heart_Atrial_Appendage
|
0.3452307
|
|
|
1261
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999398
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Heart_Atrial_Appendage
|
0.2261940
|
|
|
1271
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999398
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Heart_Atrial_Appendage
|
0.2261940
|
|
|
1262
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999398
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Heart_Atrial_Appendage
|
0.3536357
|
|
|
1272
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9999398
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Heart_Atrial_Appendage
|
0.3536357
|
|
|
441
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9997436
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Muscle_Skeletal
|
0.2739955
|
|
|
442
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9997436
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Muscle_Skeletal
|
0.2739955
|
|
|
4411
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9997436
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Muscle_Skeletal
|
0.2456159
|
|
|
4421
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9997436
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Muscle_Skeletal
|
0.2456159
|
|
|
4412
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9997436
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0120
|
14
|
22
|
negative
|
Muscle_Skeletal
|
0.2772606
|
|
|
4422
|
SIPA1L3
|
19_38664097_C_T_b37
|
0.9997436
|
SP1_HUMAN.H11MO.0.A
|
NA
|
0.0127
|
18
|
22
|
positive
|
Muscle_Skeletal
|
0.2772606
|
|